gen: check for `__unix__` instead of `__linux__`

	- Get rid of using `get_current_dir_name()` as this is Linux
	  specific, using `getcwd` instead.

Signed-off-by: Alberto Corona <alberto@0x1a.us>
platdef: change lin_def to unix_def

	- This might be completely useless...

Signed-off-by: Alberto Corona <alberto@0x1a.us>
gen: check for __unix__

	- This might make unix_def completely useless

Signed-off-by: Alberto Corona <alberto@0x1a.us>
parser: check for file extension

	- Fixed segfault when file did not have a file extension
	- Changed return on error for not having proper extension
	- Extensions might not be needed if parser opens file and checks
	  stream rather than checking for extension

Signed-off-by: Alberto Corona <alberto@0x1a.us>
parser: check if argument is a directory

Signed-off-by: Alberto Corona <alberto@0x1a.us>
gen: fix platform check

Signed-off-by: Alberto Corona <alberto@0x1a.us>
parser: fix opening a non-existing file

Signed-off-by: Alberto Corona <alberto@0x1a.us>
test: add test yaml files

Signed-off-by: Alberto Corona <alberto@0x1a.us>
dist: fix offset integer size

	- Would fail to compile on i686

Signed-off-by: Alberto Corona <alberto@0x1a.us>
Fix license on files

Signed-off-by: Alberto Corona <alberto@0x1a.us>
gen: add REL_BASEDIR macro

Signed-off-by: Alberto Corona <alberto@0x1a.us>
gen: add file list vector

	- List of files to be included in Makefile are stored in
	  FileList vector of type string

Signed-off-by: Alberto Corona <alberto@0x1a.us>
yabs: create yabs class

	- Yabs class inherits from Generator and Parser for better
	  abstraction

Signed-off-by: Alberto Corona <alberto@0x1a.us>
yabs: use Yabs class

Signed-off-by: Alberto Corona <alberto@0x1a.us>
test: add more test for parser

Signed-off-by: Alberto Corona <alberto@0x1a.us>
travis: test parse using yaml in test/

Signed-off-by: Alberto Corona <alberto@0x1a.us>
travis: fix yaml test directory

Signed-off-by: Alberto Corona <alberto@0x1a.us>
parser: complete parser

	- More or less, tags, aliases and anchors still need to be
	  properly interpreted. While currently the parser only
	  verbosely interprets a configuration file this can now be used
	  to interpret configuration files to proper data.

Signed-off-by: Alberto Corona <alberto@0x1a.us>
README: update information

	- Add projects.md defining how projects are meant to work

Signed-off-by: Alberto Corona <alberto@0x1a.us>
README: fix a few typos

Signed-off-by: Alberto Corona <alberto@0x1a.us>